﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AccesoADatos;
using Entidades;

namespace LogicaDeNegocios
{
	public class Examenes
	{
		#region Campos

		AuxiliarExamen Auxiliar;

		#endregion

		#region Constructor

		public Examenes()
		{
			Auxiliar = new AuxiliarExamen();
		}

		#endregion

		#region Métodos

		#region Agregar Examen

		public bool AgregarExamen(Examen nuevoExamen)
		{
			bool resultado = false;
			try
			{
				Examen examenAgregado = Auxiliar.Agregar(nuevoExamen);

				if (examenAgregado != null)
				{
					resultado = true;
				}
			}
			catch (Exception ex)
			{
				throw ex;
			}
			return resultado;
		}

		#endregion

		#region Modificar Examen

		public bool ModificarExamen(Examen examenAModificar)
		{
			bool resultado = false;
			try
			{
				Auxiliar.Modificar(examenAModificar);
				resultado = true;
			}
			catch (Exception ex)
			{
				throw (ex);
			}
			return resultado;
		}

		#endregion		

        #region Eliminar Examen

		public bool EliminarExamen(Examen examenAEliminar)
		{
			bool resultado = false;

			try
			{
				Auxiliar.Eliminar(examenAEliminar);
				resultado = true;
			}
			catch (Exception ex)
			{
				throw ex;                
			}

			return resultado;
		}

		#endregion

        #region Obtener Examenes

        public List<Examen> ObtenerExamenes(string clave = "")
        {
            List<Examen> resultado = null;
            try
            {
                resultado = Auxiliar.Listar(clave);
            }
            catch (Exception ex)
            {
                throw (ex);
            }
            return resultado;
        }

        #endregion

        #region Obtener Examen

        public Examen ObtenerExamen(string clave)
        {
            return ObtenerExamenes(clave).FirstOrDefault();
        }

        #endregion
		

        #endregion
    }
}
